/*
 * @File: plat_display_base.h
 * @Description: 屏幕缓冲区获取和刷新接口定义
 * @Author: wex
 * @email: wexiangis@qq.com
 * @Company:
 * @Date: 2022.11.06
 * @Version: 1.0
 * @Else: 该类只会被上层实例化一次,无需考虑重入问题
 */
#ifndef _PLAT_DISPLAY_BASE_H_
#define _PLAT_DISPLAY_BASE_H_

#include <stdint.h>
#include "common/image.h"

class CPlatDisplayBase
{
public:
    virtual ~CPlatDisplayBase() {}

    /* ----- 提供接口 ----- */

    /* 获取显示器内存和信息 */
    virtual Image& GetMap() = 0;
    /* 刷新&区域刷新 */
    virtual void Refresh(int32_t x = 0, int32_t y = 0, int32_t width = 0, int32_t height = 0) = 0;
};

#endif // _PLAT_DISPLAY_BASE_H_
